2025年12月CCF—GESP(Python七级)编程能力等级认证试卷
七级
2025
2026-07-17 18:33:01
104次
一、单选题
下面程序的运行结果为( )。
def query(n, a, x): left = 0 right = n while left < right: mid = left + (right - left) // 2 if a[mid] >= x: right = mid else: left = mid + left if left == n: return -1 return left if __name__ == "__main__": n = 10 x = 3 num = [1, 2, 2, 3, 3, 4, 5, 5, 6, 7] result = query(n, num, x) print(result)
| A. 2 |
B. 3 |
| C. 4 |
D. 5 |
【知识点】 CCF—GESP Python七级
在0/1背包问题中,给定一组物品,每个物品有一个重量和价值,背包的容量有限。假设背包的最大容量为 W,物品的数量为 n,其中第 i个物品的重量为 w[i],价值为 v[i]。以下关于0/1背包问题的描述,正确的是( )。
| A. 在解决0/1背包问题时,使用贪心算法可以保证找到最优解,因为物品只能放入一次。 |
B. 0/1背包是P问题(多项式时间可解问题),它可以在 O(nW)的时间复杂度内解决。 |
| C. 0/1背包问题中,动态规划解法的空间复杂度为O(nW),但可以通过滚动数组技巧将空间复复杂优化到 O(W)。 |
D. 0/1背包问题中,每个物品只能选择一次,并且子问题之间是独立的,无法重用计算结果。 |
【知识点】 CCF—GESP Python七级
下面程序中,函数 query 的时间复杂度是( )。
def query(n, a, x): left = 0 right = n while left < right: mid = left + (right - left) // 2 if a[mid] >= x: right = mid else: left = mid + 1 if left == n: return -1 return left if __name__ == "__main__": n = 10 x = 3 num = [1, 2, 2, 3, 3, 4, 5, 5, 6, 7] print(query(n, num, x))
| A. O(1) |
B. O(log n) |
| C. O(n) |
D. O(n log n) |
【知识点】 CCF—GESP Python七级

。
(n为正整数),和T(0)=1,那么这个算法的时间复杂度是( )。








